/**
 * <p>Copyright (c) 2016 深圳市鹏途交通科技有限公司</p>
 * <p>					All right reserved. 		 </p>
 * <p>项目名称 ： 	深圳公路信息资源整合及国省检日常化监管管理项目        </p>
 * <p>创建者   :	wy
 * <p>描   述  :  农村公路建设 </p>
 * <p>最后修改 :  $: 2017-5-26-下午3:16:11	wy   $     </p>
 * 
 */

package com.pengtu.gsj.entity.gcjs;

import java.util.List;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.JoinColumn;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.Transient;

import com.pengtu.gsj.entity.app.Attachment;
import com.pengtu.gsj.entity.base.IdEntity;

@Entity
@Table(name = "T_PFB_NCROADCONSTRUCTION")
public class NCRoadConstruction extends IdEntity {

	private static final long serialVersionUID = 2087483900420381489L;
	private String projectName; //项目名称
	private String constructionPlan; //建设计划
	private String subsidyPolicy; //补助政策   
	private String tender; //招投标    
	private String constructManager; //施工管理   
	private String qualityControl; //质量监管    
	private String fundUtilizing; //资金使用     
	private String acceptanceProject; //工程验收
	private String transportBureau; //各地级以上市交通运输局(委)
	private String competentDepartment; //县(市/区)交通运输主管部门
	private String townGovernment; //各乡镇政府
	private String remark; //备注
	private String year;  //年份
	
	
	private Integer bulletinNumber;     //检测文件数
	private List<Attachment> attachments;
	
	
	public NCRoadConstruction() {
	}
	
	public NCRoadConstruction(String projectName) {
		this.projectName = projectName;
	}

	@Column(name = "PROJECTNAME")
	public String getProjectName() {
		return projectName;
	}

	public void setProjectName(String projectName) {
		this.projectName = projectName;
	}

	@Column(name = "REMARK")
	public String getRemark() {
		return remark;
	}

	public void setRemark(String remark) {
		this.remark = remark;
	}
	
	@Column(name = "CONSTRUCTIONPLAN")
	public String getConstructionPlan() {
		return constructionPlan;
	}

	public void setConstructionPlan(String constructionPlan) {
		this.constructionPlan = constructionPlan;
	}

	@Column(name = "SUBSIDYPOLICY")
	public String getSubsidyPolicy() {
		return subsidyPolicy;
	}

	public void setSubsidyPolicy(String subsidyPolicy) {
		this.subsidyPolicy = subsidyPolicy;
	}

	@Column(name = "TENDER")
	public String getTender() {
		return tender;
	}

	public void setTender(String tender) {
		this.tender = tender;
	}

	@Column(name = "CONSTRUCTMANAGER")
	public String getConstructManager() {
		return constructManager;
	}

	public void setConstructManager(String constructManager) {
		this.constructManager = constructManager;
	}

	@Column(name = "QUALITYCONTROL")
	public String getQualityControl() {
		return qualityControl;
	}

	public void setQualityControl(String qualityControl) {
		this.qualityControl = qualityControl;
	}

	@Column(name = "FUNDUTILIZING")
	public String getFundUtilizing() {
		return fundUtilizing;
	}

	public void setFundUtilizing(String fundUtilizing) {
		this.fundUtilizing = fundUtilizing;
	}

	@Column(name = "ACCEPTANCEPROJECT")
	public String getAcceptanceProject() {
		return acceptanceProject;
	}

	public void setAcceptanceProject(String acceptanceProject) {
		this.acceptanceProject = acceptanceProject;
	}

	@Column(name = "TRANSPORTBUREAU")
	public String getTransportBureau() {
		return transportBureau;
	}

	public void setTransportBureau(String transportBureau) {
		this.transportBureau = transportBureau;
	}

	@Column(name = "COMPETENTDEPARTMENT")
	public String getCompetentDepartment() {
		return competentDepartment;
	}

	public void setCompetentDepartment(String competentDepartment) {
		this.competentDepartment = competentDepartment;
	}

	@Column(name = "TOWNGOVERNMENT")
	public String getTownGovernment() {
		return townGovernment;
	}

	public void setTownGovernment(String townGovernment) {
		this.townGovernment = townGovernment;
	}

	
	@Column(name = "YEAR")
	public String getYear() {
		return year;
	}

	public void setYear(String year) {
		this.year = year;
	}
	
	@Transient
	public Integer getBulletinNumber() {
		bulletinNumber = attachments.size();
		return bulletinNumber;
	}

	public void setBulletinNumber(Integer bulletinNumber) {
		this.bulletinNumber = bulletinNumber;
	}

	@OneToMany(fetch = FetchType.LAZY)
	@JoinColumn(name = "PARTID")
	public List<Attachment> getAttachments() {
		return attachments;
	}

	public void setAttachments(List<Attachment> attachments) {
		this.attachments = attachments;
	}

	
}
